package org.summerframework.component.upload.file.service.dto;

import org.summerframework.component.upload.image.service.dto.FileImageDTO;
import org.summerframework.core.base.dto.BaseDTO;
import org.summerframework.core.jackson.JsonFullFile;
import io.swagger.annotations.ApiModelProperty;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * file_user_rel
 * @author
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FileUserRelDTO extends BaseDTO {
    @ApiModelProperty(value = "名称", required = true)
    private String name;

    @JsonFullFile
    @ApiModelProperty(value = "", required = true)
    private String url;

    @ApiModelProperty(value = "", required = true)
    private Integer type;

    @ApiModelProperty(value = "", required = true)
    private String suffix;

    @ApiModelProperty(value = "", required = true)
    private Long size;

    @ApiModelProperty(value = "", required = true)
    private Long userId;

    @ApiModelProperty(value = "", required = true)
    private Long fileId;

    /**
     * 是否删除(0未删除,1删除)
     */
    @ApiModelProperty(value = "是否删除(0未删除,1删除)")
    private Boolean delFlag;

    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Integer createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人")
    private Integer updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    private FileImageDTO fileImageDTO;
}
